package com.shopx.cm.service;

import com.shopx.cm.bean.MaterialSaleDTO;
import com.shopx.cm.bean.MaterialSaleReqDTO;
import com.shopx.cm.model.CmMaterialModel;
import com.shopx.cmm.DTO.PageDTO;

import java.util.List;

public interface IMaterialSaleService {
    /**
     * 查询材料销量数据（到材料）
     * @param dto
     * @return
     */
    int querySalesByMaterialCnt(MaterialSaleReqDTO dto);
    List<MaterialSaleDTO> querySalesByMaterialList(MaterialSaleReqDTO dto);
    PageDTO<MaterialSaleDTO> getSalesByMaterial(MaterialSaleReqDTO dto);

    /**
     * 查询材料销量数据（到品牌）
     * @param dto
     * @return
     */
    int querySalesByBrandCnt(MaterialSaleReqDTO dto);
    List<MaterialSaleDTO> querySalesByBrandList(MaterialSaleReqDTO dto);
    PageDTO<MaterialSaleDTO> getSalesByBrand(MaterialSaleReqDTO dto);

    /**
     * 查询材料销量数据（到成控编码）
     * @param dto
     * @return
     */
    int querySalesByCodeCnt(MaterialSaleReqDTO dto);
    List<MaterialSaleDTO> querySalesByCodeList(MaterialSaleReqDTO dto);
    PageDTO<MaterialSaleDTO> getSalesByCode(MaterialSaleReqDTO dto);

    /**
     * 查询材料销量数据（到月份）
     * @param dto
     * @return
     */
    int querySalesByMthCnt(MaterialSaleReqDTO dto);
    List<MaterialSaleDTO> querySalesByMthList(MaterialSaleReqDTO dto);
    PageDTO<MaterialSaleDTO> getSalesByMth(MaterialSaleReqDTO dto);

    /**
     * 根据分组查询
     * @param dto
     * @return
     */
    List<MaterialSaleDTO> querySalesByGroupList(MaterialSaleReqDTO dto);

    /**
     * 品牌品类销售统计报表查询
     * @param dto
     * @return
     */
    List<MaterialSaleDTO> querySalesListByCode(MaterialSaleReqDTO dto);
}
